Examples of games which can be played against each other by a plurality of players via networks such as the Internet include mah-jongg games and some types of role-playing games. Usually, in a competitive game which is played via networks, one of the terminal devices operated by the players will become the master and other terminal devices will become clients. The master terminal device manages the progress of the game. The client terminal devices output images and other data as the game progresses.
More specifically, the master terminal device: 1) receives commands that are input by one of the players; 2) receives command data from the client terminal devices that was input to the client terminal devices by the other players; 3) manages the progress of the game based on the commands input at the master terminal device and the commands input from the client terminal devices; 4) controls the screen output and the audio output at the master terminal device based on the progress of the game; and 5) transmits output data indicating the progress of the game to the client terminal devices. On the other hand, the client terminal devices 1) receive commands that are input by the players; 2) transmit the commands input by the players as command data to the master terminal device; 3) receive data output from the master terminal device; and 4) control screen output and audio output based on the received output data.
Network play has been achieved in table games such as mah-jongg games and some types of role-playing games. However, network play has yet to be achieved in action games such as shooting games, racing games, ball games, real-time simulation games, and war games. This is because there is known to be lag times in response during the game between the master terminal device and client terminal devices in network play, even though real-time responses which reflect the operations by the players is desired in action-type games.
In other words, a time lag is expected between the point at which a command is input by a player and the point at which that command is reflected in the screen display and/or audio output. This is because the client terminal devices cannot update the screen or output audio unless they receive output data such as frame data, audio data, and the like from the master terminal device via the network. However, in the process of transmitting the output data from the master terminal device to the client terminal devices, network delay and packet loss may occur for various reasons.
Network delay does not cause a problem in mah-jongg games and the like. This is because a delay between the point at which a command is entered by a player and the point at which that command is reflected in the screen output and/or audio output does not affect the game result as much as it does in action-type games. Even when there is packet loss, the influence of the packet loss on the game is small since there is only a small change in the screen display and audio in mah-jongg games and the like.
On the other hand, in highly active games, network delays and packet loss may cause disadvantages to the players on the client terminal devices compared to the player on the master terminal device. This prevents this type of game from being played via networks. In highly active games, network delays in screen output and/or audio output at the client terminal devices are significant compared to those at the master terminal device, and may affect the outcome of the game. Further, if packet loss occurs in a game in which the movements of objects within the game space are important, the screen display may be disturbed and the players at the client terminal may find it uncomfortable, and the outcome of the game may even be affected. Despite these kinds of problems, it would be desirable to achieve network play in various types of games because society is becoming more dependent on networks.
An object of the present invention is to realize competitive games which can be played via networks irrespective of type.
Another object of the present invention is to eliminate the impact on a player's game environment of the difference in responsiveness between the master terminal device and the client terminal devices in a competitive network game, irrespective of the type of game.